package br.com.beiramar.entity.pessoa.corretor;
import java.io.Serializable;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name = "Titulo", schema = "ev")
@NamedQueries({ @NamedQuery(name = "titulo.Lista", query = "Select Object(result) from Titulo result") })
public class Titulo implements Serializable {

	private static final long serialVersionUID = 1L;

	@Id
	@Column(name = "idTitulo")
	private Integer idTitulo;

	@Column(name = "tituloNome")
	private String nomeTitulo;

	@Column(name = "comissaoPercent")
	private Double percentualComissao;
	
	@OneToMany(mappedBy ="titulo")
	private List<CorretorPessoa> corretorPes;

	
	public Integer getIdTitulo() {
		return idTitulo;
	}

	public void setIdTitulo(Integer idTitulo) {
		this.idTitulo = idTitulo;
	}

	public String getNomeTitulo() {
		return nomeTitulo;
	}

	public void setNomeTitulo(String nomeTitulo) {
		this.nomeTitulo = nomeTitulo;
	}

	public Double getPercentualComissao() {
		return percentualComissao;
	}

	public void setPercentualComissao(Double percentualComissao) {
		this.percentualComissao = percentualComissao;
	}
	
	public List<CorretorPessoa> getCorretorPes() {
		return corretorPes;
	}

	public void setCorretorPes(List<CorretorPessoa> corretorPes) {
		this.corretorPes = corretorPes;
	}

	
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((idTitulo == null) ? 0 : idTitulo.hashCode());
		return result;
	}

	@Override
    public boolean equals(Object obj) {
            return obj instanceof Titulo && ((Titulo)obj).getIdTitulo().equals(this.idTitulo);
    }
}